﻿using UnityEngine;

namespace UFrame
{

    public interface IPhysicsParentDelivery
    {

    }

    public interface IPhysicsCollisionEnter : IPhysicsParentDelivery
    {
        void OnCollisionEnter(Collision other,PhysicsParentDelivery delivery);
    }
    public interface IPhysicsCollisionExit : IPhysicsParentDelivery
    {
        void OnCollisionExit(Collision other,PhysicsParentDelivery delivery);
    }

    public interface IPhysicsCollisionStay : IPhysicsParentDelivery
    {
        void OnCollisionStay(Collision other,PhysicsParentDelivery delivery);
    }

    public interface IPhysicsTriggerEnter : IPhysicsParentDelivery
    {
        void OnTriggerEnter(Collider other,PhysicsParentDelivery delivery);
    }

    public interface IPhysicsTriggerStay : IPhysicsParentDelivery
    {
        void OnTriggerStay(Collider other,PhysicsParentDelivery delivery);
    }

    public interface IPhysicsTriggerExit : IPhysicsParentDelivery
    {
        void OnTriggerExit(Collider other,PhysicsParentDelivery delivery);
    }
    
    
    //=============================================================================
    public interface IRayCollision 
    {
        void OnRayCollision(RayParentDelivery delivery);
    }


}
